package org.feifei.basic.mapper;

import org.feifei.basic.query.BaseQuery;


import java.util.List;

/**
 * 抽离出的公共的mapper接口
 *
 * 里面包含了基本的增删查改等方法
 */
public interface BaseMapper<T> {

    /** 查询所有 */
    List<T> list();
    /** 根据id获取 */
    T get(Long id);
    /** 添加方法 */
    void save(T t);
    /** 根据id删除 */
    void remove(Long id);
    /** 修改方法 */
    void update(T t);
    /** 高级查询，获取所有记录*/
    List<T> listByPage(BaseQuery query);
    /** 根据高级查询获取该高级查询的总数量 */
    Long listByPageConut(BaseQuery query);
    /** 根据id批量删除 */
    void batchRemove(List<Long> ids);
}
